(pop): Move the call to `car' outside the prog1, as the compiler
authorMiles Bader <miles@gnu.org>
Fri, 14 Jun 2002 06:15:00 +0000 (06:15 +0000)
committerMiles Bader <miles@gnu.org>
Fri, 14 Jun 2002 06:15:00 +0000 (06:15 +0000)
generate better code for it.

lisp/subr.el

index 648ff0de3e3b4013c1df0e2b8ea272c1beed835b..1870e570623bc38d9badaf014e7f6961195f00f6 100644 (file)
@@ -89,8 +89,9 @@ LISTNAME must be a symbol."
 LISTNAME must be a symbol whose value is a list.
 If the value is nil, `pop' returns nil but does not actually
 change the list."
-  (list 'prog1 (list 'car listname)
-       (list 'setq listname (list 'cdr listname))))
+  (list 'car
+       (list 'prog1 listname
+             (list 'setq listname (list 'cdr listname)))))
 
 (defmacro when (cond &rest body)
   "If COND yields non-nil, do BODY, else return nil."